package com.itcam.interview.pro00.disignmodel.decoration;

/**
 * 抽象组件类，代表饮品的基类。
 * 所有具体的饮品和装饰器都将基于此类进行扩展。
 */
// 抽象组件：饮品
abstract class Beverage {
    // 饮品的描述信息，默认值为 "Unknown Beverage"
    String description = "Unknown Beverage";

    /**
     * 获取饮品的描述信息。
     * @return 饮品的描述字符串
     */
    public String getDescription() {
        // 返回饮品的描述信息
        return description;
    }

    /**
     * 抽象方法，用于计算饮品的价格。
     * 具体的饮品子类需要实现此方法来提供具体的价格计算逻辑。
     * @return 饮品的价格
     */
    public abstract double cost();
}
